Tisk z Delphi

Otázka od: Sula Milos

18. 10. 2002 10:35

Potrebuji zjistit DPI tiskarny a mam nasledujici proceduru

  printer.BeginDoc;
  dpix:=GetDeviceCaps(Printer.Canvas.Handle,LOGPIXELSX);
  dpiy:=GetDeviceCaps(Printer.Canvas.Handle,LOGPIXELSY);
  printer.Abort;

kdyz nepouziji begindoc tak mi to hlasi chybu ze printer not printig po volani
GetDeviceCaps (asi je handle 0 ???). Ovsek kdyz to mam jak to mam tak mi
tiskaran tiskne po Abortu hlasku IllegalStreamHeader. Nevite jak to udelat ?

dekuji
Milos

---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.404 / Virová báze: 228 - datum vydání: 15.10.2002

Odpovedá: Sula Milos

18. 10. 2002 15:45

No musim si odpovedet sam  

dm:PDEVICEMODE;
device,driver,port:array[0..255]of char;
mode:THANDLE;

  printer.GetPrinter(device,driver,port,mode);
  dm:=globallock(mode);
  dpix:=dm.dmYResolution;
  dpiy:=dm.dmYResolution;

jenom nevim jak dostat horizontalni DPI dmXResolution tam proste neni ?????

Milos

-----Original Message-----
From: Sula Milos
Sent: Friday, October 18, 2002 11:35 AM
To: delphi-l@clexpert.cz
Subject: Tisk z Delphi


Potrebuji zjistit DPI tiskarny a mam nasledujici proceduru

  printer.BeginDoc;
  dpix:=GetDeviceCaps(Printer.Canvas.Handle,LOGPIXELSX);
  dpiy:=GetDeviceCaps(Printer.Canvas.Handle,LOGPIXELSY);
  printer.Abort;

kdyz nepouziji begindoc tak mi to hlasi chybu ze printer not printig po volani
GetDeviceCaps (asi je handle 0 ???). Ovsek kdyz to mam jak to mam tak mi
tiskaran tiskne po Abortu hlasku IllegalStreamHeader. Nevite jak to udelat ?

dekuji
Milos


---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.404 / Virová báze: 228 - datum vydání: 15.10.2002

Odpovedá: Sula Milos

18. 10. 2002 16:17

dm.dmPrintQuality je to x-ove rozliseni uz jsem na to prisel  

Milos

-----Original Message-----
From: Sula Milos
Sent: Friday, October 18, 2002 2:25 PM
To: delphi-l@clexpert.cz
Subject: RE: Tisk z Delphi


No musim si odpovedet sam  

dm:PDEVICEMODE;
device,driver,port:array[0..255]of char;
mode:THANDLE;

  printer.GetPrinter(device,driver,port,mode);
  dm:=globallock(mode);
  dpix:=dm.dmYResolution;
  dpiy:=dm.dmYResolution;

jenom nevim jak dostat horizontalni DPI dmXResolution tam proste neni ?????

Milos

---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.404 / Virová báze: 228 - datum vydání: 15.10.2002

Odpovedá: Tomáš Fajman

18. 10. 2002 14:58


A co to takhle :O)

 printer.BeginDoc;
  dpix:=GetDeviceCaps(Printer.Handle,LOGPIXELSX);
  dpiy:=GetDeviceCaps(Printer.Handle,LOGPIXELSY);
  printer.Abort;